package com.hziee.cosmanage.companymanage.controller;

import java.util.Arrays;
import java.util.List;
import java.util.Map;

//import org.apache.shiro.authz.annotation.RequiresPermissions;
import com.hziee.cosmanage.companymanage.entity.CharacterEntity;
import com.hziee.cosmanage.companymanage.vo.PartAddVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import com.hziee.cosmanage.companymanage.entity.PartEntity;
import com.hziee.cosmanage.companymanage.service.PartService;
import com.hziee.common.utils.PageUtils;
import com.hziee.common.utils.R;



/**
 * 企业部门表
 *
 * @author yb
 * @email yangbin@gmail.com
 * @date 2021-02-04 22:08:51
 */
@RestController
@RequestMapping("companymanage/part")
public class PartController {
    @Autowired
    private PartService partService;

    /**
     * 管理员增加一个部门
     * @param partAddVo
     * @return
     */
    @PostMapping("/addPart")
    public R addPart(@RequestBody PartAddVo partAddVo){
        partService.addPart(partAddVo);
        return R.ok();
    }


    /**
     * 传入公司id，根据id返回公司部门tree
     * @param cId
     * @return
     */
    @GetMapping("/listwithtree/{cId}")
    public R listWithTree(@PathVariable("cId") Integer cId){
        List<PartEntity> entities = partService.listWithTree(cId);
        return R.ok().put("data", entities);
    }

    /**
     * 远程查询人员角色
     * @param cId
     * @param characterId
     * @return
     */
    @GetMapping("/getCompanyCharacterName")
    public R getCompanyCharacterName(@RequestParam("cId") Integer cId,@RequestParam("characterId") Integer characterId){
        CharacterEntity partEntity = partService.getCompanyCharacterName(cId,characterId);
        return R.ok().setData(partEntity);
    }

    @GetMapping("/getCompanyPartName")
    public R getCompanyPartName(@RequestParam("cId") Integer cId,@RequestParam("partId") Integer partId){
        PartEntity partEntity = partService.getCompanyPartName(cId, partId);
        return R.ok().setData(partEntity);
    }
//    /**
//     * 列表
//     */
//    @RequestMapping("/list")
//    //@RequiresPermissions("companymanage:part:list")
//    public R list(@RequestParam Map<String, Object> params){
//        PageUtils page = partService.queryPage(params);
//
//        return R.ok().put("page", page);
//    }
//
//
//    /**
//     * 信息
//     */
//    @RequestMapping("/info/{companyPartId}")
//    //@RequiresPermissions("companymanage:part:info")
//    public R info(@PathVariable("companyPartId") Integer companyPartId){
//		PartEntity part = partService.getById(companyPartId);
//
//        return R.ok().put("part", part);
//    }
//
//    /**
//     * 保存
//     */
//    @RequestMapping("/save")
//    //@RequiresPermissions("companymanage:part:save")
//    public R save(@RequestBody PartEntity part){
//		partService.save(part);
//
//        return R.ok();
//    }
//
//    /**
//     * 修改
//     */
//    @RequestMapping("/update")
//   // @RequiresPermissions("companymanage:part:update")
//    public R update(@RequestBody PartEntity part){
//		partService.updateById(part);
//
//        return R.ok();
//    }
//
//    /**
//     * 删除
//     */
//    @RequestMapping("/delete")
//    //@RequiresPermissions("companymanage:part:delete")
//    public R delete(@RequestBody Integer[] companyPartIds){
//		partService.removeByIds(Arrays.asList(companyPartIds));
//
//        return R.ok();
//    }

}
